package com.example.site.controller;

import cn.dev33.satoken.annotation.SaCheckLogin;
import cn.dev33.satoken.util.SaResult;
import com.example.site.service.OrderService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.Map;

@RestController
@RequestMapping("/api/order")
public class OrderController {
    @Resource
    OrderService orderService;

    /**
     * @param data
     * @return
     * @deprecated 获取订单列表
     */
    @SaCheckLogin
    @GetMapping("/list")
    public SaResult getOrderList(@RequestParam Map<String, String> data) {

        return orderService.getAll(data);
    }
//    这是一个使用Spring Boot编写的Java代码片段，它定义了一个控制器(Controller)用于处理HTTP GET请求。具体来说，这个控制器映射到URI路径"/list"，并且期望从查询参数中获取一个名为"data"的字符串键值对(Map<String, String>)。
//
//    当接收到GET请求时，Spring Boot框架会自动调用getOrderList()方法，并将"data"参数作为一个Map传递给orderService.getAll()方法。getAll()方法的返回类型应该是一个SaResult对象，这个对象最终会被序列化成JSON格式的响应数据返回给客户端。
    /**
     * 获取订单列表（join type user）
     */
    @SaCheckLogin
    @GetMapping("/list-join-type-user")
    public SaResult getOrderListJoinTypeAndUser(@RequestParam Map<String, String> data) {
        return orderService.getListJoinTypeAndUser(data);
    }

    @SaCheckLogin
    @PostMapping("/set-status")
    public SaResult setStatus(@RequestParam Map<String, String> data) {
        return orderService.setStatus(data);
    }
}
